2
תגובות
שאלה כללית בתכנון DB
פתח
nightf
,
היי, יש לי שאלה כללית לגבי תכנון נכון של טבלאות בDB.
אני צריך להכניס נתונים מדף הרשמה לDB.
בעבר, כשהייתי צריך להכניס נתונים לDB, היית מחלק נתונים בצורה לוגית
מבחינת הטבלאות, זאת אומרת שאם יש לי טופס הרשמה, ולדוגמא יש לי
הוספה של כמה וכמה נתונים מאותו הסוג, אז נתוני הטופס יהיו בטבלה מסויימת לנתונים הכלליים,
ואת שאר הנתונים (האלה שחוזרים על עצמם) אני מכניס לטבלה נפרדת, עם אותו ה-ID של השורה
בטבלה הכללית יותר.
כעת, המצב קצת שונה, מכיוון שאינני רואה הפרדה לוגית בין מבנה הנתונים ולכן אני לא חושב על דרך להפריד,
הטופס הינו טופס להרשמה של משתמש. יש נתונים חשובים ובסיסיים יותר ויש נתונים פחות חשובים, ולכן דרך אפשרית הינה לעשות טבלה כללית של היוזר, ולאחר מכן ליצור עוד טבלה שתיקרא "additional_info".
השאלה היא, האם מבחינת ביצועים עדיף לי שלא ליצור טבלה אחת משותפת עם משהו כמו 15 עמודות, אלא ליצור 2 טבלאות ולחלק את השדות ביניהם.
אשמח לעזרה,
תודה,
עידן.
אני צריך להכניס נתונים מדף הרשמה לDB.
בעבר, כשהייתי צריך להכניס נתונים לDB, היית מחלק נתונים בצורה לוגית
מבחינת הטבלאות, זאת אומרת שאם יש לי טופס הרשמה, ולדוגמא יש לי
הוספה של כמה וכמה נתונים מאותו הסוג, אז נתוני הטופס יהיו בטבלה מסויימת לנתונים הכלליים,
ואת שאר הנתונים (האלה שחוזרים על עצמם) אני מכניס לטבלה נפרדת, עם אותו ה-ID של השורה
בטבלה הכללית יותר.
כעת, המצב קצת שונה, מכיוון שאינני רואה הפרדה לוגית בין מבנה הנתונים ולכן אני לא חושב על דרך להפריד,
הטופס הינו טופס להרשמה של משתמש. יש נתונים חשובים ובסיסיים יותר ויש נתונים פחות חשובים, ולכן דרך אפשרית הינה לעשות טבלה כללית של היוזר, ולאחר מכן ליצור עוד טבלה שתיקרא "additional_info".
השאלה היא, האם מבחינת ביצועים עדיף לי שלא ליצור טבלה אחת משותפת עם משהו כמו 15 עמודות, אלא ליצור 2 טבלאות ולחלק את השדות ביניהם.
אשמח לעזרה,
תודה,
עידן.
2 תשובות
אפשר לחסוך את כל החפירה בשאלה הבאה:
מתי אני צריך להפריד טבלה בDB, לכמה טבלאות?
זה תלוי. אני ממליץ לך לקרוא על נורמליזציה של בסיסי נתונים. אתה יכול להתחיל עם המאמר של רן בר זיק.